package nsu.edu.zsq.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import nsu.edu.zsq.bean.ExamTeacher;
import nsu.edu.zsq.bean.ExamTeacherExample;
import nsu.edu.zsq.bean.SchExam;
import nsu.edu.zsq.param.ExamTeacherParam;

public interface ExamTeacherMapper {
    /**
     *
     */
    long countByExample(ExamTeacherExample example);

    /**
     *
     */
    int deleteByExample(ExamTeacherExample example);

    /**
     *
     */
    int deleteByPrimaryKey(Integer id);

    /**
     *
     */
    int insert(ExamTeacher record);

    /**
     *
     */
    int insertSelective(ExamTeacher record);

    /**
     *
     */
    List<ExamTeacher> selectByExample(ExamTeacherExample example);

    /**
     *
     */
    ExamTeacher selectByPrimaryKey(Integer id);

    /**
     *
     */
    int updateByExampleSelective(@Param("record") ExamTeacher record, @Param("example") ExamTeacherExample example);

    /**
     *
     */
    int updateByExample(@Param("record") ExamTeacher record, @Param("example") ExamTeacherExample example);

    /**
     *
     */
    int updateByPrimaryKeySelective(ExamTeacher record);

    /**
     *
     */
    int updateByPrimaryKey(ExamTeacher record);

    /**
     * 获取携带教师姓名的监考教师信息列表
     * @param schExam 考试课程信息（id,roomName）
     * @return List<ExamTeacher>
     */
    List<ExamTeacher> listExamTeacher(SchExam schExam);

    /**
     * 根据教师编号获取该教师的考试安排信息
     * @param teacherNo 教师编号
     * @return List<ExamTeacherParam>
     */
    List<ExamTeacherParam> listExamTeacherByTeacherNo(String teacherNo);
}